#ifndef SNAKE_H
#define SNAKE_H

#include <QMainWindow>
#include<qpainter.h>
#include<qtimer.h>
#include<QVector>
#include<qstring.h>
QT_BEGIN_NAMESPACE
namespace Ui {
class Snake;
}

QT_END_NAMESPACE

class Snake : public QMainWindow
{
    Q_OBJECT

public:
    Snake(QWidget *parent = nullptr);
    ~Snake();
    void paintEvent(QPaintEvent *event);
    void InitSnake();//初始化蛇
    QRect CreateFood();//产生食物
    void IsEat();
    void IsHit();

private slots:
    void Snake_update();//定义槽函数


private:
    Ui::Snake *ui;
    QVector <QRect> vSnakeRect;//蛇
    QRect SnakeHead;//蛇头
    void keyPressEvent(QKeyEvent *key);//定义键盘事件
    QTimer *timer;//定时器
    bool blsRun;//是否开始
    bool blsover;//是否结束
    QString Display;//开始结束提醒
    int nDirection;//蛇移动的方向
    QRect Food;//食物
    int nScore;
    int Speed;
};
#endif // SNAKE_H
